﻿using System;
using System.Collections.Generic;

namespace BenCaoXuan.Infrastructure.EFCore.MySql;

/// <summary>
/// VIP客户推广链接表（CPS）
/// </summary>
public partial class CustomerVipCp
{
    /// <summary>
    /// 推广链接ID，主键
    /// </summary>
    public string CvcId { get; set; } = null!;

    /// <summary>
    /// 推广唯一标识（短码/邀请码）
    /// </summary>
    public string? CvcCpsCode { get; set; }

    /// <summary>
    /// 完整推广链接（含参数）
    /// </summary>
    public string? CvcCpsLink { get; set; }

    /// <summary>
    /// 链接创建时间
    /// </summary>
    public DateTime? CvcCreateTime { get; set; }

    /// <summary>
    /// 推广后，注册客户ID，关联VIP客户
    /// </summary>
    public string? CvcRegisterId { get; set; }

    /// <summary>
    /// VIP客户ID，关联客户表（推广人）
    /// </summary>
    public string? CvcCustomerId { get; set; }

    /// <summary>
    /// 链接最大使用次数（0表示无限制）
    /// </summary>
    public int? CvcMaxUseCount { get; set; }

    /// <summary>
    /// 推广备注：如&quot;2024年Q3好友邀请活动链接&quot;
    /// </summary>
    public string? CvcRemark { get; set; }

    /// <summary>
    /// 奖励条件：如&quot;被邀请人注册并成为VIP&quot;
    /// </summary>
    public string? CvcRewardCondition { get; set; }

    /// <summary>
    /// 奖励类型：1-积分奖励，2-成长值奖励，3-现金返利
    /// </summary>
    public bool? CvcRewardType { get; set; }

    /// <summary>
    /// 奖励数值（积分/成长值填整数，现金填小数）
    /// </summary>
    public decimal? CvcRewardValue { get; set; }

    /// <summary>
    /// 链接状态：1-正常，2-已禁用，3-已过期
    /// </summary>
    public bool? CvcStatus { get; set; }

    /// <summary>
    /// 链接更新时间
    /// </summary>
    public DateTime? CvcUpdateTime { get; set; }

    /// <summary>
    /// 链接已使用次数（被成功邀请人数）
    /// </summary>
    public int? CvcUsedCount { get; set; }

    /// <summary>
    /// 链接失效时间（NULL表示永久有效）
    /// </summary>
    public DateTime? CvcValidEndTime { get; set; }

    /// <summary>
    /// 链接生效开始时间
    /// </summary>
    public DateTime? CvcValidStartTime { get; set; }

    /// <summary>
    /// VIP记录ID，关联客户VIP表
    /// </summary>
    public string? CvcVipid { get; set; }

    /// <summary>
    /// 注册客户第一次消费是否加分
    /// </summary>
    public int? CvcIsPointsGiven { get; set; }
}
